package com.hbnu.system.model.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;

@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@TableName("patentqualification")
public class Patent_Qualification implements Serializable {

    private static final long serialVersionUID = 1L;

    /** 主键 */
    @ApiModelProperty(value = "专利量化主键")
    @TableId(value = "PatentQualificationID", type = IdType.ASSIGN_ID)
    private String patentQualificationID;

    /** 专利主键 */
    @ApiModelProperty(value = "专利主键")
    @TableField("PatentID")
    private String patentID;

    /** 专利大类型名称（从patenttype同步） */
    @ApiModelProperty(value = "专利大类型名称")
    @TableField("PatentType1")
    private String patentType1;

    /** 专利大类型ID（1-5对应规则分类） */
    @ApiModelProperty(value = "专利大类型ID")
    @TableField("Type1ID")
    private int type1ID;

    /** 专利子类型名称（从patenttype同步） */
    @ApiModelProperty(value = "专利子类型名称")
    @TableField("PatentType2")
    private String patentType2;

    /** 专利子类型ID（细化分类） */
    @ApiModelProperty(value = "专利子类型ID")
    @TableField("Type2ID")
    private int type2ID;

    /** 专利细分类型名称（从patenttype同步） */
    @ApiModelProperty(value = "专利细分类型名称")
    @TableField("PatentType3")
    private String patentType3;

    /** 专利细分类型ID（水平/具体类型） */
    @ApiModelProperty(value = "专利细分类型ID")
    @TableField("Type3ID")
    private int type3ID;

    /** 到账经费（仅技术实施许可/转让类需填，单位：万元） */
    @ApiModelProperty(value = "到账经费（万元）", notes = "仅技术实施许可/转让类需填写")
    @TableField("Funds")
    private Float funds;  // 改为Float，支持null校验

    /** 最终得分 */
    @ApiModelProperty(value = "最终得分")
    @TableField("FinalValue")
    private float finalValue;

    @ApiModelProperty(value = "是否手动输入,true是手动,false是选类型")
    @TableField("manualScoreMode")
    private String manualScoreMode;

    @ApiModelProperty(value = "算分详情")
//    @TableField("note")
    @JsonFormat(pattern = "Note")
    private String Note;



//    private static final long serialVersionUID = 1L;
//
//    /**
//     * 主键
//     */
//    @ApiModelProperty(value = "专利量化主键")
//    @TableId(value = "PatentQualificationID", type = IdType.ASSIGN_ID)
//    private String patentQualificationID;
//
//    /**
//     * PatentID
//     *
//     */
//    @ApiModelProperty(value = "专利主键")
//    @TableField("PatentID")
//    private String patentID;
//
//    /**
//     * 论文类型1
//     *
//     */
//    @ApiModelProperty(value = "专利类型1")
//    @TableField("PatentType1")
//    private String patentType1;
//
//    /**
//     * Type1ID
//     *
//     */
//    @ApiModelProperty(value = "专利类型1-ID")
//    @TableField("Type1ID")
//    private int type1ID;
//
//    /**
//     * 论文类型2
//     *
//     */
//    @ApiModelProperty(value = "专利类型2")
//    @TableField("PatentType2")
//    private String patentType2;
//
//    /**
//     * Type2ID
//     *
//     */
//    @ApiModelProperty(value = "专利类型2-ID")
//    @TableField("Type2ID")
//    private int type2ID;
//
//    /**
//     * 专利类型3
//     *
//     */
//    @ApiModelProperty(value = "专利类型3")
//    @TableField("PatentType3")
//    private String patentType3;
//
//    /**
//     * Type3ID
//     *
//     */
//    @ApiModelProperty(value = "专利类型3-ID")
//    @TableField("Type3ID")
//    private int type3ID;
//
//    /**
//     * 到账经费
//     *
//     */
//    @ApiModelProperty(value = "到账经费")
//    @TableField("Funds")
//    private float funds;
//
//    /**
//     * 最终得分
//     *
//     */
//    @ApiModelProperty(value = "最终得分")
//    @TableField("FinalValue")
//    private float finalValue;
}
